---
id: 657f425dbab54e11993c80f0
title: Крок 15
challengeType: 20
dashedName: step-15
---

# --description--

Поки що в цьому проєкті ви не бачили жодного використання розуміння списків. Як ви дізналися в першому кроці, розуміння списків — це більш лаконічний спосіб побудови списків в Python.

Перейдемо до розуміння списків, закоментувавши всі рядки коду в межах функції `convert_to_snake_case()`. Не видаляйте їх, оскільки вони будуть корисними під час впровадження логіки за допомогою розуміння списків.

Не забудьте додати ключове слово `pass` до тіла функції, щоб запобігти несправності коду під час тестів.

# --hints--

Перетворіть всі 10 рядків коду в межах функції `convert_to_snake_case()` на коментарі. Додайте `pass`, щоб тимчасово заповнити тіло функції та уникнути помилки.

```js
({
    test: () => {
        const transformedCode = code.replace(/\r/g, "").replace(/\n#/g, "\n #");
        const convert_to_snake_case = __helpers.python.getDef("\n" + transformedCode, "convert_to_snake_case");
        const { function_body } = convert_to_snake_case;

        assert.equal(function_body.split("#").length - 1, 10);
    }
})
```

# --seed--

## --seed-contents--

```py
--fcc-editable-region--
def convert_to_snake_case(pascal_or_camel_cased_string):
    snake_cased_char_list = []
    for char in pascal_or_camel_cased_string:
        if char.isupper():
            converted_character = '_' + char.lower()
            snake_cased_char_list.append(converted_character)
        else:
            snake_cased_char_list.append(char)
    snake_cased_string = ''.join(snake_cased_char_list)
    clean_snake_cased_string = snake_cased_string.strip('_')

    return clean_snake_cased_string
--fcc-editable-region--
def main():
    print(convert_to_snake_case('aLongAndComplexString'))

if __name__ == '__main__':
    main()

```
